package com.cb.domain.service.file;

public interface FileUpload {
	/**
	 * 图片格式或大小验证
	 * @return  true表示合法,false=非法
	 */
	public boolean validate();
	
	/**
	 * 上传的回调函数，一般用于文件的处理,用于保存上传的文件
	 * @param request
	 */
	public void saveFiles();
	
	/**
	 * 检查上传的回调函数，用于图片的标准上传
	 * @param request
	 */
	public Boolean checkFiles(Integer width,Integer height);

	/**
	 * 检查是否有新上传文件 
	 */
	public boolean haveNewUploadFile();
	
	
	
	//=============================文件上传的相关常量=======================================
	
	/**
	 * 文件上限的大小 50m=52428800 ,10m=10485760
	 */
	public final static Long MAX_FILE_SIZE=10485760l; 
	
	
	/**
	 * 广告形象图片
	 */
	public final static Integer FILE_TYPE_IMAGE_Ad_IMAGE=1;
	
	//添加其他图片类型
	/**
	 * 相册图片
	 */
	public final static Integer FILE_TYPE_IMAGE_PHOTO_ALBUM=4;
	public final static String ALBUM_SMALL="album.small.dimMax";
	
	/**
	 * 产品图片
	 */
	public final static Integer FILE_TYPE_IMAGE_PRODUCT=2;
	//产品
	public final static String PRODUCT_SMALL_MESSAGE="productImage.small.dimMax";
	public final static String PRODUCT_XORG_MESSAGE="productImage.xorg.dimMax";
	
	/**
	 * 促销,资讯图片 
	 */
	public final static Integer FILE_TYPE_IMAGE_PROMOTIONS=3;
	
	/**
	 * 超级买手（超级设计）主题海报图片
	 */
	public final static Integer FILE_TYPE_IMAGE_ACTIVITY_THEME=6;
	public final static String ACTIVITY_POSTERS_SMALL_MESSAGE="activity.posters.xsmall.dimMax";
	public final static String ACTIVITY_POSTERS_XORG_MESSAGE="activity.posters.xorg.dimMax";
	
	
	/**
	 * 用户形象图片
	 */
	public final static Integer FILE_TYPE_IMAGE_USER=9;
	
	/**
	 * 品牌图片,品牌LOGO
	 */
	public final static Integer FILE_TYPE_PRODUCT_BRAND=10;
	//首页品牌墙、品牌专卖店、品牌首页、品牌产品列表页、设计师首页设计师品牌、购物车品牌图片
	public final static String BRAND_XORG_MESSAGE="brand.xorg.dimMax";
	
	
	/**
	 * 活动图片,小组图片
	 */
	public final static Integer FILE_TYPE_ACTIVITY=15;
	//圈子小组、活动图片
	public final static String GROUP_XSMALL_MESSAGE="group.xsmall.dimMax";
	public final static String GROUP_XMID_MESSAGE="group.xmid.dimMax";
	
	
	/**
	 * 首页图片
	 */
	public final static Integer FILE_TYPE_HOME_IMAGE=16;
	public final static String HOME_XSMALL_IAMGE="home.xsmall.dimMax";
	/**
	 * 超级买手、超级设计作品图片
	 */
	public final static Integer FILE_ACTIVITY_WORK=17;
	//超级买手 超级设计 作品
	public final static String ACTIVITY_WORK_SMALL_MESSAGE="activity.small.dimMax";
	public final static String ACTIVITY_WORK_XORG_MESSAGE="activity.xorg.dimMax";
	
	
	/**
	 * 超级买手、超级设计活跃主题图片
	 */
	public final static Integer FILE_ACTIVITY_ACTIVE=18;
	//超级买手、超级设计活跃主题
	public final static String ACTIVITY_ACTIVE_XORG_MESSAGE="activity.active.xorg.dimMax";
	
	/**
	 * 超级买手、超级设计获奖图片
	 */
	public final static Integer FILE_ACTIVITY_AWARDS=19;
	//超级买手、超级设计获奖主题图片
	public final static String ACTIVITY_AWARD_XORG_MESSAGE="activity.award.xorg.dimMax";
	
	//品牌首页大图
	public final static Integer BRAND_INDEX_XORG=20;
	public final static String BRAND_INDEX_XORG_MESSAGE="brand.index.xorg.dimMax";
	/**
	 * 小组、活动海报图片
	 */
	public final static Integer FILE_GROUP_POSTERS=21;
	//圈子小组、活动海报图片
	public final static String GROUP_POSTERS_XORG_MESSAGE="group.posters.xorg.dimMax";
	
	/**
	 * 产品定制图片
	 */
	public final static Integer FILE_ProductCustom=22;
	//产品定制图片
	public final static String FILE_ProductCustom_MESSAGE="productcustom.xorg.dimMax";
	
	
	/**
	 * 其他类型
	 */
	public final static Integer FILE_TYPE_IMAGE_OTHERS=99;
	
	/**
	 * 文件附件
	 */
	public final static Integer FILE_TYPE_FILE=100;
	
	/**
	 * 允许的图片文件格式
	 */
	public final static String ALLOWED_FILE_EXT_IMAGE="gif,jpg,png,bmp";
	/**
	 * 允许所有格式
	 */
	public final static String ALLOWED_FILE_EXT_ALL="*";
	
	/**
	 * 原始图片的文件名后缀
	 */
	public final static String IMG_SUFFIX_ORG="xorg";
	/**
	 * 小图后缀
	 */
	public final static String IMG_SUFFIX_SMALL="xsmall";
	/**
	 * 中图后缀
	 */
	public final static String IMG_SUFFIX_MID="xmid";
	
	
}
